This invention relates to computerized travel planning systems.
Travel planning systems are used to produce itineraries and prices by selecting suitable travel units from databases containing geographic, scheduling and pricing information. In the airline industry, fundamental travel units include xe2x80x9cflightsxe2x80x9d (sequences of regularly scheduled takeoffs and landings assigned a common identifier) and xe2x80x9cfaresxe2x80x9d (prices published by airlines for travel between two points). The term xe2x80x9citineraryxe2x80x9d is often used to refer to a sequence of flights on particular dates, and the term xe2x80x9cpricing solutionxe2x80x9d is often used to refer to a combination of fares and itineraries that satisfies a travel request.
The databases usually contain schedule information provided by airlines, typically in the so-called Standard Schedules Information Manual (SSIM) format, and usually fares published by airlines and resellers, typically provided through the intermediary Airline Tariff Publishing Company (ATPCO). The database may also contain xe2x80x9cavailabilityxe2x80x9d information that determines whether space is available on flights, or this may be obtained through communication links to external sources such as airlines.
Presently, so-called computer reservation system (CRSS) operate to produce fare and schedule information. There are four generally known computer reservation systems that operate in the United States, Sabre, Galileo, Amadeus and WorldSpan. The typical CRS contains a periodically updated central database that is accessed by subscribers such as travel agents through computer terminals. The subscribers use the computer reservation system to determine what airline flights are operating in a given market, what fares are offered and whether seats are available on flights to make bookings and issue tickets to clients.
The computer reservation systems typically conduct searches using the information contained in the database to produce itineraries that satisfy a received request. The search results are sorted and returned to the requester s computer for display. Typically, the number of possible itineraries and pricing solutions that are returned by a CRS is a small portion of the total set that may satisfy a passengers request.
According to an aspect of the invention, a computer program product residing on a computer readable medium for determining a set of fares for a set of itineraries includes instructions for causing a computer to retrieve itinerary sets for at least one slice of a journey and parse retrieved itinerary sets into faring atoms that correspond to one or more travel unit segments spanned by a single fare, wherein faring atoms are shared across itineraries. The product also includes instructions to cause the computer to apply rules to the faring atoms to produce fare components and construct from the fare components a set of fares that are valid for and associated with the itinerary sets.
According to a further aspect of the invention a method for determining a set of fares for a set of itineraries includes retrieving itinerary sets for at least one slice of a journey, parsing retrieved itinerary sets into faring atoms that correspond to one or more travel unit segments spanned by a single fare and applying rules to the faring atoms to produce fare components. The method also includes constructing from the fare components a set of fares that are valid for and associated with the itinerary sets.
According to a further aspect of the invention, a method for determining pricing solutions includes retrieving itinerary sets for all slices of a journey and decomposing said itinerary sets into faring atoms. The method also includes applying rules to said faring atoms to produce valid faring atoms that are grouped into faring components, constructing priceable unit data structures from the faring components and linking itineraries and priceable units into a data structure that represents pricing solutions.
According to a still further aspect of the invention, a computer system for determining pricing solutions includes a computer and a computer readable medium storing a computer program. The computer program has instructions that causes the computer to retrieve itinerary sets for all slices of a journey, decompose said itinerary sets into faring atoms, apply rules to the faring atoms to produce valid faring atoms that are grouped into faring components, construct priceable unit data structures from the faring components, and link itineraries and priceable units into a data structure that represents pricing solutions.